/*
 * @Author: linzaifei 1609781601@qq.com
 * @Date: 2025-06-03 15:36:18
 * @LastEditors: linzaifei 1609781601@qq.com
 * @LastEditTime: 2025-08-15 14:50:20
 * @FilePath: /amap-web-vr/src/utils/cesium-map.ts
 * @Description: 这是默认设置,请设置`customMade`, 打开koroFileHeader查看配置 进行设置: https://github.com/OBKoro1/koro1FileHeader/wiki/%E9%85%8D%E7%BD%AE
 */
// import type { VcReadyObject } from '../../node_modules/vue-cesium/es/utils/types'
// import * as Cesium from 'cesium'







// 导出一个函数，用于初始化地图
// let cesium: typeof Cesium;
// let viewer: Cesium.Viewer;
// let marker: Cesium.Entity;
// export function initMap(readyObj:VcReadyObject) {
//     console.log("+++++++",readyObj)
    // cesium = readyObj.Cesium;
    // viewer = readyObj.viewer;  
    // changePitch() 

    // viewer.scene.screenSpaceCameraController.zoomEventTypes = [
    //     Cesium.CameraEventType.WHEEL,
    //     Cesium.CameraEventType.PINCH,
    // ];
    //视图视角切换
    // viewer.scene.screenSpaceCameraController.tiltEventTypes = [
    //     Cesium.CameraEventType.PINCH,
    //     Cesium.CameraEventType.RIGHT_DRAG,
    // ];
    // translateToolBarTitle();

    // viewer.scene.screenSpaceCameraController.lookEventTypes = [
    //     Cesium.CameraEventType.PINCH,
    // ]
// }


// export function changePitch(){
//     if (!viewer) throw new Error('地图未初始化');
    
//     // 获取当前相机
//     const camera = viewer.camera;
//     let isRightMouseDown = false;
    
//     // 监听鼠标右键按下事件
//     viewer.screenSpaceEventHandler.setInputAction(() => {
//         isRightMouseDown = true;
//     }, Cesium.ScreenSpaceEventType.RIGHT_DOWN);
    
//     // 监听鼠标右键释放事件
//     viewer.screenSpaceEventHandler.setInputAction(() => {
//         isRightMouseDown = false;
//     }, Cesium.ScreenSpaceEventType.RIGHT_UP);
    
//     // 监听鼠标移动事件
//     viewer.screenSpaceEventHandler.setInputAction((movement: any) => {
//         if (!isRightMouseDown) return;
        
//         // 获取鼠标移动的像素距离
//         const deltaY = movement.endPosition.y - movement.startPosition.y;
        
//         // 计算新的pitch角度（弧度）
//         const currentPitch = camera.pitch;
//         // 根据鼠标移动方向调整pitch
//         // 向上拖动增加pitch（显示更多地形），向下拖动减少pitch
//         const newPitch = currentPitch - deltaY * 0.01;
        
//         // 限制pitch的范围，防止过度倾斜
//         const clampedPitch = Math.max(-Math.PI/2, Math.min(Math.PI/2, newPitch));
        
//         // 设置新的相机角度
//         camera.setView({
//             destination : Cesium.Cartesian3.fromDegrees(-117.16, 32.71, 5000.0),
//             orientation: {
//                 heading: camera.heading,
//                 pitch: clampedPitch,
//                 roll: camera.roll
//             }
//         });
//     }, Cesium.ScreenSpaceEventType.MOUSE_MOVE);
// }





// export const getBounds = ()=>{
    
    // if (!viewer) throw new Error('地图未初始化');
    //  // 获取当前视图的矩形范围
    //  const bounds = viewer.camera.computeViewRectangle()
      
    //  // 如果需要转换为经纬度
    //  if (bounds) {
    //    const gt_id2 = Cesium.Math.toDegrees(bounds.west)
    //    const lt_id2 = Cesium.Math.toDegrees(bounds.south)
    //    const gt_id1 = Cesium.Math.toDegrees(bounds.east)
    //    const lt_id1 = Cesium.Math.toDegrees(bounds.north)   
    //    return { gt_id2, lt_id2, gt_id1, lt_id1 }

    //  }
     
//      return null
// }


// export const moveEnd=()=>{
//     // return viewer.camera.moveEnd;
// }


// export const flyTo=(lng:number,lat:number)=>{
//     console.log("________flyTo",lng,lat)
//     // if (!viewer) throw new Error('地图未初始化');
//     // viewer.camera.flyTo({
//     //     destination:  Cesium.Cartesian3.fromDegrees(lng,lat,5000),
//     // })
// }

